home *** CD-ROM | disk | FTP | other *** search
/ Sound Blastoff / Sound Blastoff.iso / Sound Utilities / PlayerPRO 4.4.2 (FAT) / Plugs / 669 Plug / 669 Plug.rsrc / CODE_1000_68k Code.txt next >
Text File  |  1995-06-09  |  48KB  |  891 lines

  1. # near model CODE resource
  2. # this CODE claims to have no jump table entries (but starts at 600A)
  3. 00000000  434F                     chk.w      D1, A7
  4. 00000002  4445                     neg.w      D5
  5. 00000004  03E8 0000                bset       [A0 + 0x0], D1
  6. 00000008  4EFA 0508                jmp        [PC + 0x508 /* 00000512 */]
  7. fn0000000C:
  8. 0000000C  41FA FFEE                lea.l      A0, [PC - 0x12 /* FFFFFFFC */]
  9. 00000010  D1FC 0000 88D4           add.l      A0, 0x88D4
  10. 00000016  2008                     move.l     D0, A0
  11. 00000018  A055                     syscall    StripAddress
  12. 0000001A  C18C                     exg        D0, A4
  13. 0000001C  4E75                     rts
  14. 0000001E  4E75                     rts
  15. fn00000020:
  16. 00000020  206F 0004                movea.l    A0, [A7 + 0x4]
  17. 00000024  7000                     moveq.l    D0, 0x00
  18. 00000026  1010                     move.b     D0, [A0]
  19. 00000028  7200                     moveq.l    D1, 0x00
  20. 0000002A  1228 0001                move.b     D1, [A0 + 0x1]
  21. 0000002E  E149                     lsl        D1.w, 8
  22. 00000030  8240                     or.w       D1, D0
  23. 00000032  3001                     move.w     D0, D1
  24. 00000034  4E75                     rts
  25. fn00000036:
  26. 00000036  226F 0008                movea.l    A1, [A7 + 0x8]
  27. 0000003A  7200                     moveq.l    D1, 0x00
  28. 0000003C  1211                     move.b     D1, [A1]
  29. 0000003E  7000                     moveq.l    D0, 0x00
  30. 00000040  600C                     bra        +0xE /* 0000004E */
  31. label00000042:
  32. 00000042  206F 0004                movea.l    A0, [A7 + 0x4]
  33. 00000046  11B1 0000 0000           move.b     [A0 + D0.w], [A1 + D0.w]
  34. 0000004C  5240                     addq.w     D0, 1
  35. label0000004E:
  36. 0000004E  B041                     cmp.w      D0, D1
  37. 00000050  6FF0                     ble        -0xE /* 00000042 */
  38. 00000052  4E75                     rts
  39. fn00000054:
  40. 00000054  342F 0004                move.w     D2, [A7 + 0x4]
  41. 00000058  226F 0008                movea.l    A1, [A7 + 0x8]
  42. 0000005C  4A42                     tst.w      D2
  43. 0000005E  6C04                     bge        +0x6 /* 00000064 */
  44. 00000060  7400                     moveq.l    D2, 0x00
  45. 00000062  600A                     bra        +0xC /* 0000006E */
  46. label00000064:
  47. 00000064  3042                     movea.w    A0, D2
  48. 00000066  B1D1                     cmpa.l     A0, [A1]
  49. 00000068  6D04                     blt        +0x6 /* 0000006E */
  50. 0000006A  2411                     move.l     D2, [A1]
  51. 0000006C  5382                     subq.l     D2, 1
  52. label0000006E:
  53. 0000006E  306F 0006                movea.w    A0, [A7 + 0x6]
  54. 00000072  2011                     move.l     D0, [A1]
  55. 00000074  2208                     move.l     D1, A0
  56. 00000076  4C01 0800                movem.w    A3, D1
  57. 0000007A  3042                     movea.w    A0, D2
  58. 0000007C  D088                     add.l      D0, A0
  59. 0000007E  E588                     lsl        D0, 2
  60. 00000080  2049                     movea.l    A0, A1
  61. 00000082  D1C0                     add.l      A0, D0
  62. 00000084  41E8 0024                lea.l      A0, [A0 + 0x24]
  63. 00000088  4E75                     rts
  64. fn0000008A:
  65. 0000008A  48E7 1F32                movem.l    -[A7], D3,D4,D5,D6,D7,A2,A3,A6
  66. 0000008E  4FEF FEF4                lea.l      A7, [A7 - 0x10C]
  67. 00000092  246F 0138                movea.l    A2, [A7 + 0x138]
  68. 00000096  266F 0130                movea.l    A3, [A7 + 0x130]
  69. 0000009A  203C 0000 0DA8           move.l     D0, 0xDA8
  70. 000000A0  A31E                     syscall    NewPtrClear, flags=3
  71. 000000A2  2488                     move.l     [A2], A0
  72. 000000A4  200B                     move.l     D0, A3
  73. 000000A6  D0AF 0134                add.l      D0, [A7 + 0x134]
  74. 000000AA  2F40 0108                move.l     [A7 + 0x108], D0
  75. 000000AE  7000                     moveq.l    D0, 0x00
  76. 000000B0  102B 006F                move.b     D0, [A3 + 0x6F]
  77. 000000B4  C1FC 0600                muls.w     D0, 0x600
  78. 000000B8  7A00                     moveq.l    D5, 0x00
  79. 000000BA  1A2B 006E                move.b     D5, [A3 + 0x6E]
  80. 000000BE  CBFC 0019                muls.w     D5, 0x19
  81. 000000C2  0685 0000 01F1           addi.l     D5, 0x1F1
  82. 000000C8  DA80                     add.l      D5, D0
  83. 000000CA  7600                     moveq.l    D3, 0x00
  84. 000000CC  6048                     bra        +0x4A /* 00000116 */
  85. label000000CE:
  86. 000000CE  280B                     move.l     D4, A3
  87. 000000D0  7019                     moveq.l    D0, 0x19
  88. 000000D2  C1C3                     muls.w     D0, D3
  89. 000000D4  0680 0000 01FE           addi.l     D0, 0x1FE
  90. 000000DA  D880                     add.l      D4, D0
  91. 000000DC  2C44                     movea.l    A6, D4
  92. 000000DE  2F0E                     move.l     -[A7], A6
  93. 000000E0  4EBA FF3E                jsr        [PC - 0xC2 /* 00000020 */]
  94. 000000E4  3C80                     move.w     [A6], D0
  95. 000000E6  486E 0002                pea.l      [A6 + 0x2]
  96. 000000EA  4EBA FF34                jsr        [PC - 0xCC /* 00000020 */]
  97. 000000EE  3D40 0002                move.w     [A6 + 0x2], D0
  98. 000000F2  486E 0004                pea.l      [A6 + 0x4]
  99. 000000F6  4EBA FF28                jsr        [PC - 0xD8 /* 00000020 */]
  100. 000000FA  3D40 0004                move.w     [A6 + 0x4], D0
  101. 000000FE  200B                     move.l     D0, A3
  102. 00000100  D085                     add.l      D0, D5
  103. 00000102  41EF 0014                lea.l      A0, [A7 + 0x14]
  104. 00000106  2180 3400                move.l     [A0 + D3.w * 4], D0
  105. 0000010A  7000                     moveq.l    D0, 0x00
  106. 0000010C  3016                     move.w     D0, [A6]
  107. 0000010E  DA80                     add.l      D5, D0
  108. 00000110  5243                     addq.w     D3, 1
  109. 00000112  4FEF 000C                lea.l      A7, [A7 + 0xC]
  110. label00000116:
  111. 00000116  7000                     moveq.l    D0, 0x00
  112. 00000118  102B 006E                move.b     D0, [A3 + 0x6E]
  113. 0000011C  B640                     cmp.w      D3, D0
  114. 0000011E  6DAE                     blt        -0x50 /* 000000CE */
  115. 00000120  2052                     movea.l    A0, [A2]
  116. 00000122  20BC 4D41 4446           move.l     [A0], 0x4D414446 /* 'MADF' */
  117. 00000128  7600                     moveq.l    D3, 0x00
  118. 0000012A  6008                     bra        +0xA /* 00000134 */
  119. label0000012C:
  120. 0000012C  2052                     movea.l    A0, [A2]
  121. 0000012E  4230 3004                clr.b      [A0 + D3.w + 0x4]
  122. 00000132  5243                     addq.w     D3, 1
  123. label00000134:
  124. 00000134  0C43 0020                cmpi.w     D3, 0x20 /* ' ' */
  125. 00000138  6DF2                     blt        -0xC /* 0000012C */
  126. 0000013A  7600                     moveq.l    D3, 0x00
  127. 0000013C  600A                     bra        +0xC /* 00000148 */
  128. label0000013E:
  129. 0000013E  2052                     movea.l    A0, [A2]
  130. 00000140  11B3 3002 3004           move.b     [A0 + D3.w + 0x4], [A3 + D3.w + 0x2]
  131. 00000146  5243                     addq.w     D3, 1
  132. label00000148:
  133. 00000148  0C43 0020                cmpi.w     D3, 0x20 /* ' ' */
  134. 0000014C  6DF0                     blt        -0xE /* 0000013E */
  135. 0000014E  7600                     moveq.l    D3, 0x00
  136. 00000150  6062                     bra        +0x64 /* 000001B4 */
  137. label00000152:
  138. 00000152  7800                     moveq.l    D4, 0x00
  139. 00000154  600E                     bra        +0x10 /* 00000164 */
  140. label00000156:
  141. 00000156  7034                     moveq.l    D0, 0x34
  142. 00000158  C1C3                     muls.w     D0, D3
  143. 0000015A  2052                     movea.l    A0, [A2]
  144. 0000015C  D1C0                     add.l      A0, D0
  145. 0000015E  4230 4024                clr.b      [A0 + D4.w + 0x24]
  146. 00000162  5244                     addq.w     D4, 1
  147. label00000164:
  148. 00000164  0C44 0020                cmpi.w     D4, 0x20 /* ' ' */
  149. 00000168  6DEC                     blt        -0x12 /* 00000156 */
  150. 0000016A  7034                     moveq.l    D0, 0x34
  151. 0000016C  C1C3                     muls.w     D0, D3
  152. 0000016E  2052                     movea.l    A0, [A2]
  153. 00000170  42B0 0844                clr.l      [A0 + D0 + 0x44]
  154. 00000174  7034                     moveq.l    D0, 0x34
  155. 00000176  C1C3                     muls.w     D0, D3
  156. 00000178  2052                     movea.l    A0, [A2]
  157. 0000017A  4230 0848                clr.b      [A0 + D0 + 0x48]
  158. 0000017E  7034                     moveq.l    D0, 0x34
  159. 00000180  C1C3                     muls.w     D0, D3
  160. 00000182  2052                     movea.l    A0, [A2]
  161. 00000184  4230 0849                clr.b      [A0 + D0 + 0x49]
  162. 00000188  7034                     moveq.l    D0, 0x34
  163. 0000018A  C1C3                     muls.w     D0, D3
  164. 0000018C  2052                     movea.l    A0, [A2]
  165. 0000018E  31BC 0001 084C           move.w     [A0 + D0 + 0x4C], 0x1
  166. 00000194  7034                     moveq.l    D0, 0x34
  167. 00000196  C1C3                     muls.w     D0, D3
  168. 00000198  2052                     movea.l    A0, [A2]
  169. 0000019A  4230 084E                clr.b      [A0 + D0 + 0x4E]
  170. 0000019E  7034                     moveq.l    D0, 0x34
  171. 000001A0  C1C3                     muls.w     D0, D3
  172. 000001A2  2052                     movea.l    A0, [A2]
  173. 000001A4  42B0 0850                clr.l      [A0 + D0 + 0x50]
  174. 000001A8  7034                     moveq.l    D0, 0x34
  175. 000001AA  C1C3                     muls.w     D0, D3
  176. 000001AC  2052                     movea.l    A0, [A2]
  177. 000001AE  42B0 0854                clr.l      [A0 + D0 + 0x54]
  178. 000001B2  5243                     addq.w     D3, 1
  179. label000001B4:
  180. 000001B4  0C43 0040                cmpi.w     D3, 0x40 /* '@' */
  181. 000001B8  6D98                     blt        -0x66 /* 00000152 */
  182. 000001BA  2052                     movea.l    A0, [A2]
  183. 000001BC  116B 006F 0D24           move.b     [A0 + 0xD24], [A3 + 0x6F]
  184. 000001C2  2052                     movea.l    A0, [A2]
  185. 000001C4  4228 0D25                clr.b      [A0 + 0xD25]
  186. 000001C8  7600                     moveq.l    D3, 0x00
  187. 000001CA  600C                     bra        +0xE /* 000001D8 */
  188. label000001CC:
  189. 000001CC  2052                     movea.l    A0, [A2]
  190. 000001CE  D0C3                     add.w      A0, D3
  191. 000001D0  1173 3071 0D26           move.b     [A0 + 0xD26], [A3 + D3.w + 0x71]
  192. 000001D6  5243                     addq.w     D3, 1
  193. label000001D8:
  194. 000001D8  0C43 0080                cmpi.w     D3, 0x80
  195. 000001DC  6DEE                     blt        -0x10 /* 000001CC */
  196. 000001DE  2052                     movea.l    A0, [A2]
  197. 000001E0  117C 0008 0DA6           move.b     [A0 + 0xDA6], 0x8
  198. 000001E6  7600                     moveq.l    D3, 0x00
  199. 000001E8  6000 00E4                bra        +0xE6 /* 000002CE */
  200. label000001EC:
  201. 000001EC  280B                     move.l     D4, A3
  202. 000001EE  7019                     moveq.l    D0, 0x19
  203. 000001F0  C1C3                     muls.w     D0, D3
  204. 000001F2  0680 0000 01FE           addi.l     D0, 0x1FE
  205. 000001F8  D880                     add.l      D4, D0
  206. 000001FA  2C44                     movea.l    A6, D4
  207. 000001FC  7000                     moveq.l    D0, 0x00
  208. 000001FE  3016                     move.w     D0, [A6]
  209. 00000200  7234                     moveq.l    D1, 0x34
  210. 00000202  C3C3                     muls.w     D1, D3
  211. 00000204  2052                     movea.l    A0, [A2]
  212. 00000206  2180 1844                move.l     [A0 + D1 + 0x44], D0
  213. 0000020A  7034                     moveq.l    D0, 0x34
  214. 0000020C  C1C3                     muls.w     D0, D3
  215. 0000020E  2052                     movea.l    A0, [A2]
  216. 00000210  4230 0848                clr.b      [A0 + D0 + 0x48]
  217. 00000214  7034                     moveq.l    D0, 0x34
  218. 00000216  C1C3                     muls.w     D0, D3
  219. 00000218  2052                     movea.l    A0, [A2]
  220. 0000021A  11BC 0040 0849           move.b     [A0 + D0 + 0x49], 0x40 /* '@' */
  221. 00000220  7034                     moveq.l    D0, 0x34
  222. 00000222  C1C3                     muls.w     D0, D3
  223. 00000224  2052                     movea.l    A0, [A2]
  224. 00000226  31BC 0001 084C           move.w     [A0 + D0 + 0x4C], 0x1
  225. 0000022C  7034                     moveq.l    D0, 0x34
  226. 0000022E  C1C3                     muls.w     D0, D3
  227. 00000230  2052                     movea.l    A0, [A2]
  228. 00000232  11BC 0008 084E           move.b     [A0 + D0 + 0x4E], 0x8
  229. 00000238  7034                     moveq.l    D0, 0x34
  230. 0000023A  C1C3                     muls.w     D0, D3
  231. 0000023C  2052                     movea.l    A0, [A2]
  232. 0000023E  42B0 0850                clr.l      [A0 + D0 + 0x50]
  233. 00000242  7034                     moveq.l    D0, 0x34
  234. 00000244  C1C3                     muls.w     D0, D3
  235. 00000246  2052                     movea.l    A0, [A2]
  236. 00000248  42B0 0854                clr.l      [A0 + D0 + 0x54]
  237. 0000024C  7034                     moveq.l    D0, 0x34
  238. 0000024E  C1C3                     muls.w     D0, D3
  239. 00000250  2052                     movea.l    A0, [A2]
  240. 00000252  4AB0 0844                tst.l      [A0 + D0 + 0x44]
  241. 00000256  6F66                     ble        +0x68 /* 000002BE */
  242. 00000258  7034                     moveq.l    D0, 0x34
  243. 0000025A  C1C3                     muls.w     D0, D3
  244. 0000025C  2052                     movea.l    A0, [A2]
  245. 0000025E  2030 0844                move.l     D0, [A0 + D0 + 0x44]
  246. 00000262  A11E                     syscall    NewPtr, flags=1
  247. 00000264  3243                     movea.w    A1, D3
  248. 00000266  2009                     move.l     D0, A1
  249. 00000268  E588                     lsl        D0, 2
  250. 0000026A  224A                     movea.l    A1, A2
  251. 0000026C  D3C0                     add.l      A1, D0
  252. 0000026E  2348 0324                move.l     [A1 + 0x324], A0
  253. 00000272  7034                     moveq.l    D0, 0x34
  254. 00000274  C1C3                     muls.w     D0, D3
  255. 00000276  2052                     movea.l    A0, [A2]
  256. 00000278  2F30 0844                move.l     -[A7], [A0 + D0 + 0x44]
  257. 0000027C  3043                     movea.w    A0, D3
  258. 0000027E  2008                     move.l     D0, A0
  259. 00000280  E588                     lsl        D0, 2
  260. 00000282  204A                     movea.l    A0, A2
  261. 00000284  D1C0                     add.l      A0, D0
  262. 00000286  2268 0324                movea.l    A1, [A0 + 0x324]
  263. 0000028A  201F                     move.l     D0, [A7]+
  264. 0000028C  41EF 0008                lea.l      A0, [A7 + 0x8]
  265. 00000290  2070 3400                movea.l    A0, [A0 + D3.w * 4]
  266. 00000294  A02E                     syscall    BlockMove/BlockMoveData
  267. 00000296  3043                     movea.w    A0, D3
  268. 00000298  2008                     move.l     D0, A0
  269. 0000029A  E588                     lsl        D0, 2
  270. 0000029C  204A                     movea.l    A0, A2
  271. 0000029E  D1C0                     add.l      A0, D0
  272. 000002A0  2C68 0324                movea.l    A6, [A0 + 0x324]
  273. 000002A4  7800                     moveq.l    D4, 0x00
  274. 000002A6  6008                     bra        +0xA /* 000002B0 */
  275. label000002A8:
  276. 000002A8  0436 FF80 4800           subi.b     [A6 + D4], 0x80
  277. 000002AE  5284                     addq.l     D4, 1
  278. label000002B0:
  279. 000002B0  7034                     moveq.l    D0, 0x34
  280. 000002B2  C1C3                     muls.w     D0, D3
  281. 000002B4  2052                     movea.l    A0, [A2]
  282. 000002B6  B8B0 0844                cmp.l      D4, [A0 + D0 + 0x44]
  283. 000002BA  6DEC                     blt        -0x12 /* 000002A8 */
  284. 000002BC  600E                     bra        +0x10 /* 000002CC */
  285. label000002BE:
  286. 000002BE  3043                     movea.w    A0, D3
  287. 000002C0  2008                     move.l     D0, A0
  288. 000002C2  E588                     lsl        D0, 2
  289. 000002C4  204A                     movea.l    A0, A2
  290. 000002C6  D1C0                     add.l      A0, D0
  291. 000002C8  42A8 0324                clr.l      [A0 + 0x324]
  292. label000002CC:
  293. 000002CC  5243                     addq.w     D3, 1
  294. label000002CE:
  295. 000002CE  7000                     moveq.l    D0, 0x00
  296. 000002D0  102B 006E                move.b     D0, [A3 + 0x6E]
  297. 000002D4  B640                     cmp.w      D3, D0
  298. 000002D6  6D00 FF14                blt        -0xEA /* 000001EC */
  299. 000002DA  7600                     moveq.l    D3, 0x00
  300. 000002DC  162B 006E                move.b     D3, [A3 + 0x6E]
  301. 000002E0  6034                     bra        +0x36 /* 00000316 */
  302. label000002E2:
  303. 000002E2  3043                     movea.w    A0, D3
  304. 000002E4  2008                     move.l     D0, A0
  305. 000002E6  E588                     lsl        D0, 2
  306. 000002E8  204A                     movea.l    A0, A2
  307. 000002EA  D1C0                     add.l      A0, D0
  308. 000002EC  42A8 0324                clr.l      [A0 + 0x324]
  309. 000002F0  7034                     moveq.l    D0, 0x34
  310. 000002F2  C1C3                     muls.w     D0, D3
  311. 000002F4  2052                     movea.l    A0, [A2]
  312. 000002F6  11BC 0040 0849           move.b     [A0 + D0 + 0x49], 0x40 /* '@' */
  313. 000002FC  7034                     moveq.l    D0, 0x34
  314. 000002FE  C1C3                     muls.w     D0, D3
  315. 00000300  2052                     movea.l    A0, [A2]
  316. 00000302  31BC 0001 084C           move.w     [A0 + D0 + 0x4C], 0x1
  317. 00000308  7034                     moveq.l    D0, 0x34
  318. 0000030A  C1C3                     muls.w     D0, D3
  319. 0000030C  2052                     movea.l    A0, [A2]
  320. 0000030E  11BC 0008 084E           move.b     [A0 + D0 + 0x4E], 0x8
  321. 00000314  5243                     addq.w     D3, 1
  322. label00000316:
  323. 00000316  0C43 0040                cmpi.w     D3, 0x40 /* '@' */
  324. 0000031A  6DC6                     blt        -0x38 /* 000002E2 */
  325. 0000031C  7000                     moveq.l    D0, 0x00
  326. 0000031E  102B 006E                move.b     D0, [A3 + 0x6E]
  327. 00000322  C1FC 0019                muls.w     D0, 0x19
  328. 00000326  48C0                     ext.l      D0
  329. 00000328  720B                     moveq.l    D1, 0x0B
  330. 0000032A  E3A8                     lsl        D0, D1
  331. 0000032C  204B                     movea.l    A0, A3
  332. 0000032E  D1C0                     add.l      A0, D0
  333. 00000330  D1FC 000F 8800           add.l      A0, 0xF8800
  334. 00000336  2E08                     move.l     D7, A0
  335. 00000338  280B                     move.l     D4, A3
  336. 0000033A  7000                     moveq.l    D0, 0x00
  337. 0000033C  102B 006E                move.b     D0, [A3 + 0x6E]
  338. 00000340  C1FC 0019                muls.w     D0, 0x19
  339. 00000344  0680 0000 01F1           addi.l     D0, 0x1F1
  340. 0000034A  D880                     add.l      D4, D0
  341. 0000034C  2E04                     move.l     D7, D4
  342. 0000034E  2052                     movea.l    A0, [A2]
  343. 00000350  117C 0008 0DA6           move.b     [A0 + 0xDA6], 0x8
  344. 00000356  7600                     moveq.l    D3, 0x00
  345. 00000358  6000 0138                bra        +0x13A /* 00000492 */
  346. label0000035C:
  347. 0000035C  2052                     movea.l    A0, [A2]
  348. 0000035E  7000                     moveq.l    D0, 0x00
  349. 00000360  1028 0DA6                move.b     D0, [A0 + 0xDA6]
  350. 00000364  48C0                     ext.l      D0
  351. 00000366  ED88                     lsl        D0, 6
  352. 00000368  E588                     lsl        D0, 2
  353. 0000036A  7224                     moveq.l    D1, 0x24
  354. 0000036C  D081                     add.l      D0, D1
  355. 0000036E  A31E                     syscall    NewPtrClear, flags=3
  356. 00000370  2588 3404                move.l     [A2 + D3.w * 4 + 0x4], A0
  357. 00000374  2072 3404                movea.l    A0, [A2 + D3.w * 4 + 0x4]
  358. 00000378  7040                     moveq.l    D0, 0x40
  359. 0000037A  2080                     move.l     [A0], D0
  360. 0000037C  2072 3404                movea.l    A0, [A2 + D3.w * 4 + 0x4]
  361. 00000380  217C 4E4F 4E45 0004      move.l     [A0 + 0x4], 0x4E4F4E45 /* 'NONE' */
  362. 00000388  7800                     moveq.l    D4, 0x00
  363. 0000038A  600A                     bra        +0xC /* 00000396 */
  364. label0000038C:
  365. 0000038C  2072 3404                movea.l    A0, [A2 + D3.w * 4 + 0x4]
  366. 00000390  4230 4008                clr.b      [A0 + D4.w + 0x8]
  367. 00000394  5244                     addq.w     D4, 1
  368. label00000396:
  369. 00000396  0C44 0014                cmpi.w     D4, 0x14
  370. 0000039A  6DF0                     blt        -0xE /* 0000038C */
  371. 0000039C  2072 3404                movea.l    A0, [A2 + D3.w * 4 + 0x4]
  372. 000003A0  42A8 001C                clr.l      [A0 + 0x1C]
  373. 000003A4  2072 3404                movea.l    A0, [A2 + D3.w * 4 + 0x4]
  374. 000003A8  42A8 0020                clr.l      [A0 + 0x20]
  375. 000003AC  7800                     moveq.l    D4, 0x00
  376. 000003AE  6000 00D8                bra        +0xDA /* 00000488 */
  377. label000003B2:
  378. 000003B2  7A00                     moveq.l    D5, 0x00
  379. 000003B4  6000 00C2                bra        +0xC4 /* 00000478 */
  380. label000003B8:
  381. 000003B8  2F32 3404                move.l     -[A7], [A2 + D3.w * 4 + 0x4]
  382. 000003BC  3F05                     move.w     -[A7], D5
  383. 000003BE  3F04                     move.w     -[A7], D4
  384. 000003C0  4EBA FC92                jsr        [PC - 0x36E /* 00000054 */]
  385. 000003C4  2648                     movea.l    A3, A0
  386. 000003C6  3C45                     movea.w    A6, D5
  387. 000003C8  200E                     move.l     D0, A6
  388. 000003CA  E588                     lsl        D0, 2
  389. 000003CC  3C44                     movea.w    A6, D4
  390. 000003CE  220E                     move.l     D1, A6
  391. 000003D0  EB89                     lsl        D1, 5
  392. 000003D2  3C43                     movea.w    A6, D3
  393. 000003D4  240E                     move.l     D2, A6
  394. 000003D6  2F40 0008                move.l     [A7 + 0x8], D0
  395. 000003DA  700B                     moveq.l    D0, 0x0B
  396. 000003DC  E1AA                     lsl        D2, D0
  397. 000003DE  2C47                     movea.l    A6, D7
  398. 000003E0  DDC2                     add.l      A6, D2
  399. 000003E2  DDC1                     add.l      A6, D1
  400. 000003E4  DDEF 0008                add.l      A6, [A7 + 0x8]
  401. 000003E8  2C0E                     move.l     D6, A6
  402. 000003EA  BDEF 0110                cmpa.l     A6, [A7 + 0x110]
  403. 000003EE  504F                     addq.w     A7, 8
  404. 000003F0  6502                     bcs        +0x4 /* 000003F4 */
  405. 000003F2  A9FF                     syscall    Debugger
  406. label000003F4:
  407. 000003F4  2046                     movea.l    A0, D6
  408. 000003F6  0C10 00FF                cmpi.b     [A0], 0xFF
  409. 000003FA  6610                     bne        +0x12 /* 0000040C */
  410. 000003FC  422B 0002                clr.b      [A3 + 0x2]
  411. 00000400  422B 0003                clr.b      [A3 + 0x3]
  412. 00000404  4213                     clr.b      [A3]
  413. 00000406  422B 0001                clr.b      [A3 + 0x1]
  414. 0000040A  604E                     bra        +0x50 /* 0000045A */
  415. label0000040C:
  416. 0000040C  0C10 00FE                cmpi.b     [A0], 0xFE
  417. 00000410  6610                     bne        +0x12 /* 00000422 */
  418. 00000412  4213                     clr.b      [A3]
  419. 00000414  422B 0001                clr.b      [A3 + 0x1]
  420. 00000418  422B 0002                clr.b      [A3 + 0x2]
  421. 0000041C  422B 0003                clr.b      [A3 + 0x3]
  422. 00000420  6038                     bra        +0x3A /* 0000045A */
  423. label00000422:
  424. 00000422  E9D6 0186                bfextu     D0, [A6] {6:6}
  425. 00000426  5240                     addq.w     D0, 1
  426. 00000428  1680                     move.b     [A3], D0
  427. 0000042A  E9D6 0006                bfextu     D0, [A6] {0:6}
  428. 0000042E  1740 0001                move.b     [A3 + 0x1], D0
  429. 00000432  102B 0001                move.b     D0, [A3 + 0x1]
  430. 00000436  0240 00F0                andi.w     D0, 0xF0
  431. 0000043A  E840                     asr        D0.w, 4
  432. 0000043C  3F40 0006                move.w     [A7 + 0x6], D0
  433. 00000440  102B 0001                move.b     D0, [A3 + 0x1]
  434. 00000444  0240 000F                andi.w     D0, 0xF
  435. 00000448  3F40 0004                move.w     [A7 + 0x4], D0
  436. 0000044C  700C                     moveq.l    D0, 0x0C
  437. 0000044E  C1EF 0006                muls.w     D0, [A7 + 0x6]
  438. 00000452  D06F 0004                add.w      D0, [A7 + 0x4]
  439. 00000456  1740 0001                move.b     [A3 + 0x1], D0
  440. label0000045A:
  441. 0000045A  2046                     movea.l    A0, D6
  442. 0000045C  0C28 00FF 0002           cmpi.b     [A0 + 0x2], 0xFF
  443. 00000462  660A                     bne        +0xC /* 0000046E */
  444. 00000464  422B 0002                clr.b      [A3 + 0x2]
  445. 00000468  422B 0003                clr.b      [A3 + 0x3]
  446. 0000046C  6008                     bra        +0xA /* 00000476 */
  447. label0000046E:
  448. 0000046E  422B 0002                clr.b      [A3 + 0x2]
  449. 00000472  422B 0003                clr.b      [A3 + 0x3]
  450. label00000476:
  451. 00000476  5245                     addq.w     D5, 1
  452. label00000478:
  453. 00000478  2052                     movea.l    A0, [A2]
  454. 0000047A  7000                     moveq.l    D0, 0x00
  455. 0000047C  1028 0DA6                move.b     D0, [A0 + 0xDA6]
  456. 00000480  BA40                     cmp.w      D5, D0
  457. 00000482  6D00 FF34                blt        -0xCA /* 000003B8 */
  458. 00000486  5244                     addq.w     D4, 1
  459. label00000488:
  460. 00000488  0C44 0040                cmpi.w     D4, 0x40 /* '@' */
  461. 0000048C  6D00 FF24                blt        -0xDA /* 000003B2 */
  462. 00000490  5243                     addq.w     D3, 1
  463. label00000492:
  464. 00000492  2052                     movea.l    A0, [A2]
  465. 00000494  7000                     moveq.l    D0, 0x00
  466. 00000496  1028 0D24                move.b     D0, [A0 + 0xD24]
  467. 0000049A  B640                     cmp.w      D3, D0
  468. 0000049C  6D00 FEBE                blt        -0x140 /* 0000035C */
  469. 000004A0  7000                     moveq.l    D0, 0x00
  470. 000004A2  4FEF 010C                lea.l      A7, [A7 + 0x10C]
  471. 000004A6  4CDF 4CF8                movem.l    D3,D4,D5,D6,D7,A2,A3,A6, [A7]+
  472. 000004AA  4E75                     rts
  473. fn000004AC:
  474. 000004AC  48E7 0030                movem.l    -[A7], A2,A3
  475. 000004B0  246F 000C                movea.l    A2, [A7 + 0xC]
  476. 000004B4  266F 0010                movea.l    A3, [A7 + 0x10]
  477. 000004B8  257C 3636 3920 008C      move.l     [A2 + 0x8C], 0x36363920 /* '669 ' */
  478. 000004C0  422B 0020                clr.b      [A3 + 0x20]
  479. 000004C4  486B 0002                pea.l      [A3 + 0x2]
  480. 000004C8  4EBA 03F6                jsr        [PC + 0x3F6 /* 000008C0 */]
  481. 000004CC  584F                     addq.w     A7, 4
  482. 000004CE  2F00                     move.l     -[A7], D0
  483. 000004D0  2F0A                     move.l     -[A7], A2
  484. 000004D2  4EBA FB62                jsr        [PC - 0x49E /* 00000036 */]
  485. 000004D6  42AA 0080                clr.l      [A2 + 0x80]
  486. 000004DA  42AA 0084                clr.l      [A2 + 0x84]
  487. 000004DE  426A 008A                clr.w      [A2 + 0x8A]
  488. 000004E2  486C 8000                pea.l      [A4 - 0x8000]
  489. 000004E6  486A 0040                pea.l      [A2 + 0x40]
  490. 000004EA  4EBA FB4A                jsr        [PC - 0x4B6 /* 00000036 */]
  491. 000004EE  7000                     moveq.l    D0, 0x00
  492. 000004F0  4FEF 0010                lea.l      A7, [A7 + 0x10]
  493. 000004F4  4CDF 0C00                movem.l    A2,A3, [A7]+
  494. 000004F8  4E75                     rts
  495. fn000004FA:
  496. 000004FA  206F 0004                movea.l    A0, [A7 + 0x4]
  497. 000004FE  0C50 6669                cmpi.w     [A0], 0x6669 /* 'fi' */
  498. 00000502  6706                     beq        +0x8 /* 0000050A */
  499. 00000504  0C50 6966                cmpi.w     [A0], 0x6966 /* 'if' */
  500. 00000508  6604                     bne        +0x6 /* 0000050E */
  501. label0000050A:
  502. 0000050A  7000                     moveq.l    D0, 0x00
  503. 0000050C  4E75                     rts
  504. label0000050E:
  505. 0000050E  70FD                     moveq.l    D0, 0xFFFFFFFD
  506. 00000510  4E75                     rts
  507. label00000512:
  508. 00000512  48E7 1830                movem.l    -[A7], D3,D4,A2,A3
  509. 00000516  4FEF FFF4                lea.l      A7, [A7 - 0xC]
  510. 0000051A  246F 0024                movea.l    A2, [A7 + 0x24]
  511. 0000051E  266F 002C                movea.l    A3, [A7 + 0x2C]
  512. 00000522  4EBA FAE8                jsr        [PC - 0x518 /* 0000000C */]
  513. 00000526  2800                     move.l     D4, D0
  514. 00000528  554F                     subq.w     A7, 2
  515. 0000052A  42A7                     clr.l      -[A7]
  516. 0000052C  486F 000A                pea.l      [A7 + 0xA]
  517. 00000530  486F 000A                pea.l      [A7 + 0xA]
  518. 00000534  4EBA 02D0                jsr        [PC + 0x2D0 /* 00000806 */]
  519. 00000538  301F                     move.w     D0, [A7]+
  520. 0000053A  554F                     subq.w     A7, 2
  521. 0000053C  42A7                     clr.l      -[A7]
  522. 0000053E  3F12                     move.w     -[A7], [A2]
  523. 00000540  2F2A 0002                move.l     -[A7], [A2 + 0x2]
  524. 00000544  4EBA 0308                jsr        [PC + 0x308 /* 0000084E */]
  525. 00000548  301F                     move.w     D0, [A7]+
  526. 0000054A  7600                     moveq.l    D3, 0x00
  527. 0000054C  202F 0020                move.l     D0, [A7 + 0x20]
  528. 00000550  0480 494D 504C           subi.l     D0, 0x494D504C /* 'IMPL' */
  529. 00000556  6718                     beq        +0x1A /* 00000570 */
  530. 00000558  0480 0000 F603           subi.l     D0, 0xF603
  531. 0000055E  6700 0114                beq        +0x116 /* 00000674 */
  532. 00000562  0480 0AF7 0D05           subi.l     D0, 0xAF70D05
  533. 00000568  6700 00A6                beq        +0xA8 /* 00000610 */
  534. 0000056C  6000 017E                bra        +0x180 /* 000006EC */
  535. label00000570:
  536. 00000570  554F                     subq.w     A7, 2
  537. 00000572  486A 0006                pea.l      [A2 + 0x6]
  538. 00000576  4267                     clr.w      -[A7]
  539. 00000578  486F 0012                pea.l      [A7 + 0x12]
  540. 0000057C  4EBA 01A0                jsr        [PC + 0x1A0 /* 0000071E */]
  541. 00000580  301F                     move.w     D0, [A7]+
  542. 00000582  3600                     move.w     D3, D0
  543. 00000584  4A43                     tst.w      D3
  544. 00000586  6600 0166                bne        +0x168 /* 000006EE */
  545. 0000058A  554F                     subq.w     A7, 2
  546. 0000058C  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  547. 00000590  486F 000A                pea.l      [A7 + 0xA]
  548. 00000594  4EBA 022A                jsr        [PC + 0x22A /* 000007C0 */]
  549. 00000598  301F                     move.w     D0, [A7]+
  550. 0000059A  202F 0006                move.l     D0, [A7 + 0x6]
  551. 0000059E  D080                     add.l      D0, D0
  552. 000005A0  A11E                     syscall    NewPtr, flags=1
  553. 000005A2  2448                     movea.l    A2, A0
  554. 000005A4  200A                     move.l     D0, A2
  555. 000005A6  6604                     bne        +0x6 /* 000005AC */
  556. 000005A8  76FE                     moveq.l    D3, 0xFFFFFFFE
  557. 000005AA  6054                     bra        +0x56 /* 00000600 */
  558. label000005AC:
  559. 000005AC  204A                     movea.l    A0, A2
  560. 000005AE  A01F                     syscall    DisposPtr/DisposePtr
  561. 000005B0  202F 0006                move.l     D0, [A7 + 0x6]
  562. 000005B4  A11E                     syscall    NewPtr, flags=1
  563. 000005B6  2448                     movea.l    A2, A0
  564. 000005B8  554F                     subq.w     A7, 2
  565. 000005BA  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  566. 000005BE  486F 000A                pea.l      [A7 + 0xA]
  567. 000005C2  2F0A                     move.l     -[A7], A2
  568. 000005C4  4EBA 01B2                jsr        [PC + 0x1B2 /* 00000778 */]
  569. 000005C8  301F                     move.w     D0, [A7]+
  570. 000005CA  3600                     move.w     D3, D0
  571. 000005CC  4A43                     tst.w      D3
  572. 000005CE  662A                     bne        +0x2C /* 000005FA */
  573. 000005D0  2F0A                     move.l     -[A7], A2
  574. 000005D2  4EBA FF26                jsr        [PC - 0xDA /* 000004FA */]
  575. 000005D6  3600                     move.w     D3, D0
  576. 000005D8  4A43                     tst.w      D3
  577. 000005DA  584F                     addq.w     A7, 4
  578. 000005DC  661C                     bne        +0x1E /* 000005FA */
  579. 000005DE  2F2F 0028                move.l     -[A7], [A7 + 0x28]
  580. 000005E2  594F                     subq.w     A7, 4
  581. 000005E4  2F0A                     move.l     -[A7], A2
  582. 000005E6  4EBA 0128                jsr        [PC + 0x128 /* 00000710 */]
  583. 000005EA  201F                     move.l     D0, [A7]+
  584. 000005EC  2F00                     move.l     -[A7], D0
  585. 000005EE  2F0A                     move.l     -[A7], A2
  586. 000005F0  4EBA FA98                jsr        [PC - 0x568 /* 0000008A */]
  587. 000005F4  3600                     move.w     D3, D0
  588. 000005F6  4FEF 000C                lea.l      A7, [A7 + 0xC]
  589. label000005FA:
  590. 000005FA  204A                     movea.l    A0, A2
  591. 000005FC  A01F                     syscall    DisposPtr/DisposePtr
  592. 000005FE  95CA                     sub.l      A2, A2
  593. label00000600:
  594. 00000600  554F                     subq.w     A7, 2
  595. 00000602  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  596. 00000606  4EBA 0156                jsr        [PC + 0x156 /* 0000075E */]
  597. 0000060A  301F                     move.w     D0, [A7]+
  598. 0000060C  6000 00E0                bra        +0xE2 /* 000006EE */
  599. label00000610:
  600. 00000610  554F                     subq.w     A7, 2
  601. 00000612  486A 0006                pea.l      [A2 + 0x6]
  602. 00000616  4267                     clr.w      -[A7]
  603. 00000618  486F 0012                pea.l      [A7 + 0x12]
  604. 0000061C  4EBA 0100                jsr        [PC + 0x100 /* 0000071E */]
  605. 00000620  301F                     move.w     D0, [A7]+
  606. 00000622  3600                     move.w     D3, D0
  607. 00000624  4A43                     tst.w      D3
  608. 00000626  6600 00C6                bne        +0xC8 /* 000006EE */
  609. 0000062A  2F7C 0000 0400 0006      move.l     [A7 + 0x6], 0x400
  610. 00000632  202F 0006                move.l     D0, [A7 + 0x6]
  611. 00000636  A11E                     syscall    NewPtr, flags=1
  612. 00000638  2448                     movea.l    A2, A0
  613. 0000063A  200A                     move.l     D0, A2
  614. 0000063C  6604                     bne        +0x6 /* 00000642 */
  615. 0000063E  76FE                     moveq.l    D3, 0xFFFFFFFE
  616. 00000640  6024                     bra        +0x26 /* 00000666 */
  617. label00000642:
  618. 00000642  554F                     subq.w     A7, 2
  619. 00000644  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  620. 00000648  486F 000A                pea.l      [A7 + 0xA]
  621. 0000064C  2F0A                     move.l     -[A7], A2
  622. 0000064E  4EBA 0128                jsr        [PC + 0x128 /* 00000778 */]
  623. 00000652  301F                     move.w     D0, [A7]+
  624. 00000654  3600                     move.w     D3, D0
  625. 00000656  2F0A                     move.l     -[A7], A2
  626. 00000658  4EBA FEA0                jsr        [PC - 0x160 /* 000004FA */]
  627. 0000065C  3600                     move.w     D3, D0
  628. 0000065E  204A                     movea.l    A0, A2
  629. 00000660  A01F                     syscall    DisposPtr/DisposePtr
  630. 00000662  95CA                     sub.l      A2, A2
  631. 00000664  584F                     addq.w     A7, 4
  632. label00000666:
  633. 00000666  554F                     subq.w     A7, 2
  634. 00000668  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  635. 0000066C  4EBA 00F0                jsr        [PC + 0xF0 /* 0000075E */]
  636. 00000670  301F                     move.w     D0, [A7]+
  637. 00000672  607A                     bra        +0x7C /* 000006EE */
  638. label00000674:
  639. 00000674  554F                     subq.w     A7, 2
  640. 00000676  486A 0006                pea.l      [A2 + 0x6]
  641. 0000067A  4267                     clr.w      -[A7]
  642. 0000067C  486F 0012                pea.l      [A7 + 0x12]
  643. 00000680  4EBA 009C                jsr        [PC + 0x9C /* 0000071E */]
  644. 00000684  301F                     move.w     D0, [A7]+
  645. 00000686  3600                     move.w     D3, D0
  646. 00000688  4A43                     tst.w      D3
  647. 0000068A  6662                     bne        +0x64 /* 000006EE */
  648. 0000068C  554F                     subq.w     A7, 2
  649. 0000068E  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  650. 00000692  486B 0090                pea.l      [A3 + 0x90]
  651. 00000696  4EBA 0128                jsr        [PC + 0x128 /* 000007C0 */]
  652. 0000069A  301F                     move.w     D0, [A7]+
  653. 0000069C  2F7C 0000 1388 0006      move.l     [A7 + 0x6], 0x1388
  654. 000006A4  202F 0006                move.l     D0, [A7 + 0x6]
  655. 000006A8  A11E                     syscall    NewPtr, flags=1
  656. 000006AA  2448                     movea.l    A2, A0
  657. 000006AC  200A                     move.l     D0, A2
  658. 000006AE  6604                     bne        +0x6 /* 000006B4 */
  659. 000006B0  76FE                     moveq.l    D3, 0xFFFFFFFE
  660. 000006B2  602A                     bra        +0x2C /* 000006DE */
  661. label000006B4:
  662. 000006B4  554F                     subq.w     A7, 2
  663. 000006B6  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  664. 000006BA  486F 000A                pea.l      [A7 + 0xA]
  665. 000006BE  2F0A                     move.l     -[A7], A2
  666. 000006C0  4EBA 00B6                jsr        [PC + 0xB6 /* 00000778 */]
  667. 000006C4  301F                     move.w     D0, [A7]+
  668. 000006C6  3600                     move.w     D3, D0
  669. 000006C8  4A43                     tst.w      D3
  670. 000006CA  660C                     bne        +0xE /* 000006D8 */
  671. 000006CC  2F0A                     move.l     -[A7], A2
  672. 000006CE  2F0B                     move.l     -[A7], A3
  673. 000006D0  4EBA FDDA                jsr        [PC - 0x226 /* 000004AC */]
  674. 000006D4  3600                     move.w     D3, D0
  675. 000006D6  504F                     addq.w     A7, 8
  676. label000006D8:
  677. 000006D8  204A                     movea.l    A0, A2
  678. 000006DA  A01F                     syscall    DisposPtr/DisposePtr
  679. 000006DC  95CA                     sub.l      A2, A2
  680. label000006DE:
  681. 000006DE  554F                     subq.w     A7, 2
  682. 000006E0  3F2F 000C                move.w     -[A7], [A7 + 0xC]
  683. 000006E4  4EBA 0078                jsr        [PC + 0x78 /* 0000075E */]
  684. 000006E8  301F                     move.w     D0, [A7]+
  685. 000006EA  6002                     bra        +0x4 /* 000006EE */
  686. label000006EC:
  687. 000006EC  76FF                     moveq.l    D3, 0xFFFFFFFF
  688. label000006EE:
  689. 000006EE  554F                     subq.w     A7, 2
  690. 000006F0  42A7                     clr.l      -[A7]
  691. 000006F2  3F2F 000A                move.w     -[A7], [A7 + 0xA]
  692. 000006F6  2F2F 0008                move.l     -[A7], [A7 + 0x8]
  693. 000006FA  4EBA 0152                jsr        [PC + 0x152 /* 0000084E */]
  694. 000006FE  301F                     move.w     D0, [A7]+
  695. 00000700  2004                     move.l     D0, D4
  696. 00000702  C18C                     exg        D0, A4
  697. 00000704  3003                     move.w     D0, D3
  698. 00000706  4FEF 000C                lea.l      A7, [A7 + 0xC]
  699. 0000070A  4CDF 0C18                movem.l    D3,D4,A2,A3, [A7]+
  700. 0000070E  4E75                     rts
  701. fn00000710:
  702. 00000710  225F                     movea.l    A1, [A7]+
  703. 00000712  205F                     movea.l    A0, [A7]+
  704. 00000714  A021                     syscall    GetPtrSize
  705. 00000716  2E80                     move.l     [A7], D0
  706. 00000718  6A02                     bpl        +0x4 /* 0000071C */
  707. 0000071A  4297                     clr.l      [A7]
  708. label0000071C:
  709. 0000071C  4ED1                     jmp        [A1]
  710. fn0000071E:
  711. 0000071E  4E56 FFCE                link       A6, -0x0032
  712. 00000722  204F                     movea.l    A0, A7
  713. 00000724  216E 000E 0012           move.l     [A0 + 0x12], [A6 + 0xE]
  714. 0000072A  316E 000C 0016           move.w     [A0 + 0x16], [A6 + 0xC]
  715. 00000730  4228 001A                clr.b      [A0 + 0x1A]
  716. 00000734  4228 001B                clr.b      [A0 + 0x1B]
  717. 00000738  42A8 001C                clr.l      [A0 + 0x1C]
  718. 0000073C  701A                     moveq.l    D0, 0x1A
  719. 0000073E  A060                     syscall    FSDispatch/HFSDispatch
  720. 00000740  0C40 FFCE                cmpi.w     D0, 0xFFCE
  721. 00000744  6602                     bne        +0x4 /* 00000748 */
  722. 00000746  A000                     syscall    Open/PBHOpen/HOpen
  723. label00000748:
  724. 00000748  226E 0008                movea.l    A1, [A6 + 0x8]
  725. 0000074C  32A8 0018                move.w     [A1], [A0 + 0x18]
  726. 00000750  3D40 0012                move.w     [A6 + 0x12], D0
  727. 00000754  4E5E                     unlink     A6
  728. 00000756  205F                     movea.l    A0, [A7]+
  729. 00000758  4FEF 000A                lea.l      A7, [A7 + 0xA]
  730. 0000075C  4ED0                     jmp        [A0]
  731. fn0000075E:
  732. 0000075E  4E56 FFCE                link       A6, -0x0032
  733. 00000762  204F                     movea.l    A0, A7
  734. 00000764  316E 0008 0018           move.w     [A0 + 0x18], [A6 + 0x8]
  735. 0000076A  A001                     syscall    Close
  736. 0000076C  3D40 000A                move.w     [A6 + 0xA], D0
  737. 00000770  4E5E                     unlink     A6
  738. 00000772  205F                     movea.l    A0, [A7]+
  739. 00000774  548F                     addq.l     A7, 2
  740. 00000776  4ED0                     jmp        [A0]
  741. fn00000778:
  742. 00000778  51C1                     sf         D1
  743. 0000077A  6002                     bra        +0x4 /* 0000077E */
  744. 0000077C  50C1                     st         D1
  745. label0000077E:
  746. 0000077E  4E56 FFCE                link       A6, -0x0032
  747. 00000782  204F                     movea.l    A0, A7
  748. 00000784  216E 0008 0020           move.l     [A0 + 0x20], [A6 + 0x8]
  749. 0000078A  316E 0010 0018           move.w     [A0 + 0x18], [A6 + 0x10]
  750. 00000790  226E 000C                movea.l    A1, [A6 + 0xC]
  751. 00000794  2151 0024                move.l     [A0 + 0x24], [A1]
  752. 00000798  4268 002C                clr.w      [A0 + 0x2C]
  753. 0000079C  42A8 002E                clr.l      [A0 + 0x2E]
  754. 000007A0  4A01                     tst.b      D1
  755. 000007A2  6604                     bne        +0x6 /* 000007A8 */
  756. 000007A4  A002                     syscall    Read
  757. 000007A6  6002                     bra        +0x4 /* 000007AA */
  758. label000007A8:
  759. 000007A8  A003                     syscall    Write
  760. label000007AA:
  761. 000007AA  3D40 0012                move.w     [A6 + 0x12], D0
  762. 000007AE  226E 000C                movea.l    A1, [A6 + 0xC]
  763. 000007B2  22A8 0028                move.l     [A1], [A0 + 0x28]
  764. 000007B6  4E5E                     unlink     A6
  765. 000007B8  225F                     movea.l    A1, [A7]+
  766. 000007BA  4FEF 000A                lea.l      A7, [A7 + 0xA]
  767. 000007BE  4ED1                     jmp        [A1]
  768. fn000007C0:
  769. 000007C0  4E56 FFCE                link       A6, -0x0032
  770. 000007C4  204F                     movea.l    A0, A7
  771. 000007C6  316E 000C 0018           move.w     [A0 + 0x18], [A6 + 0xC]
  772. 000007CC  A011                     syscall    GetEOF
  773. 000007CE  3D40 000E                move.w     [A6 + 0xE], D0
  774. 000007D2  226E 0008                movea.l    A1, [A6 + 0x8]
  775. 000007D6  22A8 001C                move.l     [A1], [A0 + 0x1C]
  776. 000007DA  4E5E                     unlink     A6
  777. 000007DC  225F                     movea.l    A1, [A7]+
  778. 000007DE  5C8F                     addq.l     A7, 6
  779. 000007E0  4ED1                     jmp        [A1]
  780. fn000007E2:
  781. 000007E2  225F                     movea.l    A1, [A7]+
  782. 000007E4  101F                     move.b     D0, [A7]+
  783. 000007E6  205F                     movea.l    A0, [A7]+
  784. 000007E8  6604                     bne        +0x6 /* 000007EE */
  785. 000007EA  A215                     syscall    SetVol/PBHSetVol/HSetVol, flags=2
  786. 000007EC  6002                     bra        +0x4 /* 000007F0 */
  787. label000007EE:
  788. 000007EE  A615                     syscall    SetVol/PBHSetVol/HSetVol, flags=6
  789. label000007F0:
  790. 000007F0  3E80                     move.w     [A7], D0
  791. 000007F2  4ED1                     jmp        [A1]
  792. fn000007F4:
  793. 000007F4  225F                     movea.l    A1, [A7]+
  794. 000007F6  101F                     move.b     D0, [A7]+
  795. 000007F8  205F                     movea.l    A0, [A7]+
  796. 000007FA  6604                     bne        +0x6 /* 00000800 */
  797. 000007FC  A214                     syscall    GetVol/PBHGetVol/HGetVol, flags=2
  798. 000007FE  6002                     bra        +0x4 /* 00000802 */
  799. label00000800:
  800. 00000800  A614                     syscall    GetVol/PBHGetVol/HGetVol, flags=6
  801. label00000802:
  802. 00000802  3E80                     move.w     [A7], D0
  803. 00000804  4ED1                     jmp        [A1]
  804. fn00000806:
  805. 00000806  4E56 FFCC                link       A6, -0x0034
  806. 0000080A  2F07                     move.l     -[A7], D7
  807. 0000080C  2D6E 0010 FFDE           move.l     [A6 - 0x22], [A6 + 0x10]
  808. 00000812  558F                     subq.l     A7, 2
  809. 00000814  486E FFCC                pea.l      [A6 - 0x34]
  810. 00000818  7000                     moveq.l    D0, 0x00
  811. 0000081A  1F00                     move.b     -[A7], D0
  812. 0000081C  4EBA FFD6                jsr        [PC - 0x2A /* 000007F4 */]
  813. 00000820  3E1F                     move.w     D7, [A7]+
  814. 00000822  206E 000C                movea.l    A0, [A6 + 0xC]
  815. 00000826  30AE FFE2                move.w     [A0], [A6 - 0x1E]
  816. 0000082A  206E 0008                movea.l    A0, [A6 + 0x8]
  817. 0000082E  20AE FFFC                move.l     [A0], [A6 - 0x4]
  818. 00000832  3D47 0014                move.w     [A6 + 0x14], D7
  819. 00000836  2E2E FFC8                move.l     D7, [A6 - 0x38]
  820. 0000083A  4E5E                     unlink     A6
  821. 0000083C  205F                     movea.l    A0, [A7]+
  822. 0000083E  4FEF 000C                lea.l      A7, [A7 + 0xC]
  823. 00000842  4ED0                     jmp        [A0]
  824. 00000844  8748 4745                pack       -[A3], -[A0], 0x4745
  825. 00000848  5456                     addq.w     [A6], 2
  826. 0000084A  4F4C                     chk.w      D7, A4
  827. 0000084C  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  828. // begin alternate branch 0000084E-00000852
  829. fn0000084E:
  830. 0000084E  4E56 FFCC                link       A6, -0x0034
  831. // end alternate branch 0000084E-00000852
  832. fn0000084E: // (misaligned)
  833. 00000850  FFCC                     .extension 0xFCC // unimplemented
  834. 00000852  2D6E 000E FFDE           move.l     [A6 - 0x22], [A6 + 0xE]
  835. 00000858  3D6E 000C FFE2           move.w     [A6 - 0x1E], [A6 + 0xC]
  836. 0000085E  2D6E 0008 FFFC           move.l     [A6 - 0x4], [A6 + 0x8]
  837. 00000864  558F                     subq.l     A7, 2
  838. 00000866  486E FFCC                pea.l      [A6 - 0x34]
  839. 0000086A  7000                     moveq.l    D0, 0x00
  840. 0000086C  1F00                     move.b     -[A7], D0
  841. 0000086E  4EBA FF72                jsr        [PC - 0x8E /* 000007E2 */]
  842. 00000872  3D5F 0012                move.w     [A6 + 0x12], [A7]+
  843. 00000876  4E5E                     unlink     A6
  844. 00000878  205F                     movea.l    A0, [A7]+
  845. 0000087A  4FEF 000A                lea.l      A7, [A7 + 0xA]
  846. 0000087E  4ED0                     jmp        [A0]
  847. 00000880  8748 5345                pack       -[A3], -[A0], 0x5345
  848. 00000884  5456                     addq.w     [A6], 2
  849. 00000886  4F4C                     chk.w      D7, A4
  850. 00000888  0000 202F                ori.b      D0, 0x2F /* '/' */
  851. // begin alternate branch 0000088A-00000894
  852. fn0000088A:
  853. 0000088A  202F 0004                move.l     D0, [A7 + 0x4]
  854. 0000088E  2F40 0008                move.l     [A7 + 0x8], D0
  855. 00000892  6726                     beq        +0x28 /* 000008BA */
  856. // end alternate branch 0000088A-00000894
  857. fn0000088A: // (misaligned)
  858. 0000088C  0004 2F40                ori.b      D4, 0x40 /* '@' */
  859. 00000890  0008 6726                ori.b      A0, 0x26 /* '&' */
  860. 00000894  2040                     movea.l    A0, D0
  861. 00000896  2248                     movea.l    A1, A0
  862. 00000898  1019                     move.b     D0, [A1]+
  863. 0000089A  671E                     beq        +0x20 /* 000008BA */
  864. label0000089C:
  865. 0000089C  1211                     move.b     D1, [A1]
  866. 0000089E  12C0                     move.b     [A1]+, D0
  867. 000008A0  1001                     move.b     D0, D1
  868. 000008A2  66F8                     bne        -0x6 /* 0000089C */
  869. 000008A4  93C8                     sub.l      A1, A0
  870. 000008A6  2009                     move.l     D0, A1
  871. 000008A8  5340                     subq.w     D0, 1
  872. 000008AA  0C80 0000 00FF           cmpi.l     D0, 0xFF
  873. 000008B0  6F06                     ble        +0x8 /* 000008B8 */
  874. 000008B2  203C 0000 00FF           move.l     D0, 0xFF
  875. label000008B8:
  876. 000008B8  1080                     move.b     [A0], D0
  877. label000008BA:
  878. 000008BA  225F                     movea.l    A1, [A7]+
  879. 000008BC  584F                     addq.w     A7, 4
  880. 000008BE  4ED1                     jmp        [A1]
  881. fn000008C0:
  882. 000008C0  594F                     subq.w     A7, 4
  883. 000008C2  2F2F 0008                move.l     -[A7], [A7 + 0x8]
  884. 000008C6  4EBA FFC2                jsr        [PC - 0x3E /* 0000088A */]
  885. 000008CA  205F                     movea.l    A0, [A7]+
  886. 000008CC  2008                     move.l     D0, A0
  887. 000008CE  4E75                     rts
  888. 000008D0  0836 3639 2050           btst.b     [A6 + D2.w + 0x50], 0x39 /* '9' */
  889. 000008D6  6C75                     bge        +0x77 /* 0000094D */
  890. 000008D8  67                       .incomplete
  891.